package org.example.journal_items.Entity;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.List;

//用户登录实体类
@Schema(description = "用户登录实体")
@Data
@Getter
@Setter
public class User {
    @Schema(description = "用户名", example = "admin", required = true)
    @NotBlank(message = "用户名不能为空")
    private String username;

    @Schema(description = "密码", example = "123456", required = true)
    @NotBlank(message = "密码不能为空")
    private String password;

    private Long id;
    private String avatar;
    private List<String> tags; // 个人标签（JSON数组）
    private java.util.Date createdAt;
    private java.util.Date updatedAt;
    private java.util.Date birthday; // 生日
    private String bio; // 个性签名
    private String nickname; // 昵称

    private Boolean isFirstLogin; // 是否首次登录
    private String theme; // 用户主题偏好

    // private String email;
    // private String createTime;
    // private String updateTime;
}